home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 18 / CU Amiga Magazine's Super CD-ROM 18 (1997)(EMAP Images)(GB)[!][issue 1998-01].iso / CUCD / Programming / AmigaE / Src / OOmodules / Coordinate / er.e next >
Encoding:
Text File  |  1995-05-20  |  1.6 KB  |  73 lines

  1. /*
  2.  
  3. Just opens a tiny window and rotates a line. Use it to see if your
  4. kite's still running :)
  5.  
  6. */
  7.  
  8. OPT PREPROCESS
  9.  
  10. MODULE 'oomodules/coordinate/line', 'oomodules/coordinate', 'intuition/intuition',
  11.         'oomodules/sort/numbers/float'
  12.  
  13. #define NULL_X (30)
  14. #define NULL_Y (15)
  15.  
  16. DEF hauptwin:PTR TO window, /* Hauptfenster */
  17.     meineintmessage:PTR TO intuimessage /* Kopie der intmsg */
  18.  
  19.  
  20.  
  21. PROC main()
  22. DEF coo:PTR TO coordinate,co2:PTR TO coordinate,
  23.     line:PTR TO line,flt:PTR TO float
  24.  
  25.   NEW coo.new(["set",0.0,0.0,0.0])
  26.   NEW co2.new(["set",30.0,30.0,0.0])
  27.  
  28.   NEW flt.new()
  29.   flt.set(2.0)
  30.  
  31.   NEW line.new()
  32.  
  33.   line.setStart(coo)
  34.  
  35.   line.setEnd(coo)
  36.   line.end.shift(co2)
  37.  
  38.   co2.x.neg()
  39.   co2.y.neg()
  40.   co2.z.neg()
  41.   line.shift(co2)
  42.  
  43.   hauptwin := OpenWindowTagList(NIL,
  44.   [WA_TITLE,'ER',
  45.    WA_IDCMP,IDCMP_RAWKEY OR IDCMP_CLOSEWINDOW OR IDCMP_MOUSEMOVE OR IDCMP_GADGETUP OR IDCMP_GADGETDOWN OR IDCMP_MOUSEBUTTONS OR IDCMP_MENUPICK OR IDCMP_REFRESHWINDOW,
  46.    WA_FLAGS,WFLG_ACTIVATE+WFLG_CLOSEGADGET+WFLG_DRAGBAR+WFLG_DEPTHGADGET,
  47.    WA_INNERWIDTH, 90, WA_INNERHEIGHT, 50,
  48.    WA_REPORTMOUSE,TRUE,WA_GIMMEZEROZERO,TRUE,NIL])
  49.  
  50.   SetStdRast(hauptwin.rport)
  51.  
  52.   REPEAT
  53.     meineintmessage := GetMsg(hauptwin.userport)
  54.  
  55.     line.rotateZ(3.0)
  56.  
  57.     line.x.add(flt)
  58. ->    line.y.substract(flt)
  59.  
  60.     Line(NULL_X+(!line.getX()!/2),NULL_Y+(!line.getY()!/4),
  61.          NULL_X+(!line.end.getX()!/2)  ,NULL_Y+(!line.end.getY()!/4))
  62.     WaitTOF()
  63.     Line(NULL_X+(!line.getX()!/2),NULL_Y+(!line.getY()!/4),
  64.          NULL_X+(!line.end.getX()!/2)  ,NULL_Y+(!line.end.getY()!/4),0)
  65.  
  66.   UNTIL (meineintmessage.class = IDCMP_CLOSEWINDOW)
  67.  
  68.   CloseWindow(hauptwin)
  69.  
  70.   CleanUp(0)
  71.  
  72. ENDPROC
  73.